import { transform } from "babel-core";

//对所有的dom节点操作的js代码
//给节点添加类
export function addClass(el, className) {
  if (hasClass(el, className)) {
    return;
  } else {
    let newClass = el.className.split('')
    newClass.push(className)
    el.className = newClass.join('')
  }
}

//判断节点是否已经添加了类
export function hasClass(el, className) {
  //以这个类名开头，或者以空白开始
  //以这个类名结尾，或者以空白结束
  let reg = new RegExp(`(/^|\\s/)` + className + `(/\\s|$/)`)
  return reg.test(el.className)
}

// 获取对应属性下，某个属性值
export function getData(el,name,val){
  const prefix = 'data-'
  name = prefix +name
  if(val){
    return el.setAttribute(name,val)
  }else{
    return el.getAttribute(name)
  }
}
//解决浏览器的适配问题
let elementStyle = document.createElement("div").style;

let vendor = (()=>{
  let transformNames = {
    webkit: 'webkitTransform',
    Moz: 'MozTransform',
    O: 'OTransform',
    ms: 'msTransform',
    standard: 'transform'
  }

  for(let key in vendor){
    if(elementStyle[transformNames[key]] !== undefined){
      return key
    }
  }
  return false
})()

export function prefixStyle(style) {
  if(vendor === false){
    return false
  }
  if(vendor === 'standard'){
    return style
  }

  return vendor + style.charAt(0).toUpperCase() + style.substr(1);
}